package cn.edu.jxust.common.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author QiuKangming
 * @since 2020-06-29
 */

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@TableName("t_aqi")
public class Aqi implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 数据记录id号
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * AQI的计算类型, 小时数据(H), 一天数据(D)
     */
    private String aqiType;

    /**
     * 表示是哪一个设备检测的数据的溶度信息, 根据这个设备id可以查出区域,企业, 那个监测点
     */
    private Integer deviceId;

    /**
     * 气体类型id号
     */
    private Integer airtypeId;

    /**
     * 气体平均值(生成时间内有多条气体浓度记录,所以需要计算平均值)
     */
    private Double avgAirvalue;

    /**
     * 生成记录时间
     */
    private LocalDateTime createDatetime;

    /**
     * 单项气体的iaqi值,
     */
    private Integer iAqiValue;

    /**
     * 综合污染气体的aqi值,
     */
    private Integer aqiValue;

    /**
     * 首要污染物: 当空气质量小 <= 50的时候是没有首要污染物的: 该值为 --
     */
    private String mainPollution;

    /**
     * 空气质量aqi等级, 1 (优), 2 (良), 3(轻度污染), 4(中度污染), 5 (中度污染), 6(严重污染)
     */
    private Integer aqiLevel;

    /**
     * 记录状态(默认为1), 0 失效, 1 有效
     */
    @TableLogic
    private Integer status;

}
